package com.lazily.string_;


/**
 * @Author:  GZQ
 * @date:  2025/3/3 22:00
 * @description: String 类的理解和创建对象
 */

public class String01 {
	// 程序入口
	public static void main(String[] args) {
		/*
		1. String 对象用于保存字符串, 也就是一组字符序列
		2. "jack" 字符串常量, 双引号括起来的字符序列
		3. 字符串的字符使用Unicode字符编码, 一个字符(不区分字母还是汉字)占两个字节
		4. String 类有很多构造器, 构造器的重载
		🪶 常用的有 	String s1 = new String();
					String s2 = new String(String original);
					String s3 = new String(char[] a);
					String s4 = new String(char[] a, int startIndex, int count)
					String s5 = new String(byte[] b)
		5. String 类实现了接口 Serializable [String 可以串行化: 可以在网络中传输]
						 接口 Comparable [String 对象可以比较大小]
		6. string 是 final 类, 不能被其他的类继承
		7. String 有属性 private final char value[]; 用于存放字符串内容
		8. 一定要注意：value 是一个final类型   不可以修改(需要功力), 即value 不能指向新的地址, 但是单个字符内容是可以变化
		 */
		String name = "jack";
		name = "tom";
		final char[] val = {'a', 'b', 'c'};
		char[] value2 = {'d', 'e', 'f'};
		val[0] = 'H';
		// val = value2; // 不可修改 value地址
	}
}
